package com.ygqh.baby.utils;

import java.io.IOException;
import java.io.InputStream;
import java.text.MessageFormat;
import java.util.Properties;

public class PropertiesUtil {

	@Deprecated
	public static String get(String fileName, String key, String[] params) throws Exception {
		Properties prop = new Properties();
		InputStream in = PropertiesUtil.class.getClassLoader().getResourceAsStream(fileName);

		prop.load(in);
		// 从配置文件中读取模板字符串替换
		String msg = MessageFormat.format(prop.getProperty(key), params);
		return msg;
	}

	/**
	 * 从配置文件中读取数据，并替换模板中占位符（此方法替换 get）
	* @Title: get 
	*  @param fileName
	*  @param key
	*  @param params
	*  @return
	*  @throws Exception    入参
	* @return String    返回类型
	* @author （guohao） 
	* @throws
	* @date 2018年3月20日 下午3:59:38 
	* @version V1.0
	 */
	public static String getData(String fileName, String key, Object... params) throws Exception {
		Properties prop = new Properties();
		InputStream in = PropertiesUtil.class.getClassLoader().getResourceAsStream(fileName);

		prop.load(in);
		// 从配置文件中读取模板字符串替换
		String msg = MessageFormat.format(prop.getProperty(key), params);
		return msg;
	}

	/**
	 * 获取配置文件中数据
	* @Title: get 
	*  @param fileName
	*  @param key
	*  @return
	*  @throws Exception    入参
	* @return String    返回类型
	* @author （guohao） 
	* @throws
	* @date 2018年3月20日 下午4:00:35 
	* @version V1.0
	 */
	public static String getData(String fileName, String key) {
		Properties prop = new Properties();
		InputStream in = PropertiesUtil.class.getClassLoader().getResourceAsStream(fileName);

		try {
			prop.load(in);
		} catch (IOException e) {
			e.printStackTrace();
		}
		return prop.getProperty(key);
	}

	public static Properties getProperties(String fileName) {
		Properties prop = new Properties();
		InputStream in = PropertiesUtil.class.getClassLoader().getResourceAsStream(fileName);

		try {
			prop.load(in);
		} catch (IOException e) {
			e.printStackTrace();
		}
		return prop;
	}
}
